#ifndef MANAGER_H
#define MANAGER_H
#include "Container.h"

#include <vector>
#include <mutex>
#include <iostream>
using namespace std;

class Manager
{
    vector<Container *> arr;
    Container *top = nullptr;

public:
    Manager()
    {
    }
    Manager(const Manager &) = delete;
    Manager &operator=(const Manager &) = delete;



    void add(Container *other);
    void set_top(Container *other);
    Container &get_top() { return *top; };
    Container *get_container(size_t index);
    bool hasTop() { return top != nullptr; }
    void upadta_top();
};

#endif